C++教程
C++控制语句
C++函数
C++数组
C++指针
C++对象
C++继承
C++多态
C++抽象
C++常用
C++ STL教程
C++迭代器
C++程序

C++ multimap operator<=

C++ multimap operator<=

C++ operator<= 是 multimap 的非成员重载函数。此功能用于检查第一个 multimap 是否小于或等于其他。
注意: 运算符<=按顺序比较元素,并且首先不匹配比较将停止。

语法

template <class Key, class T, class Compare, class Alloc>
  bool operator<= ( const multimap<Key,T,Compare,Alloc>& lhs,
                    const multimap<Key,T,Compare,Alloc>& rhs );

参数

lhs : 第一个 multimap 对象。
rhs : 第二个 multimap 对象。

返回值

如果 multimap 对象的左侧小于或等于右侧的,则返回 true 。 multimap对象,否则为 false 。

复杂度

如果lhs和rhs的大小不同,则复杂度将保持不变。
否则,大小最大为线性(相等比较)。

迭代器有效性

没有变化。

数据争用

访问容器,lhs和rhs。

异常安全性

此函数不会引发异常。

示例1

让我们看一个简单的示例,检查第一个 multimap 是否小于或等于:
#include <iostream>
#include <map>
using namespace std;
int main() {
   multimap<char, int> m1;
   multimap<char, int> m2;
   m1.emplace('a', 1);
   m2.emplace('a', 1);
   if (m1 <= m2)
      cout << "Multimap m1 is less than or equal to m2." << endl;
   m1.emplace('b', 2);
   if (!(m1 <= m2))
      cout << "Multimap m1 is not less than or equal to m2." << endl;
   return 0;
}
输出:
Multimap m1 is less than or equal to m2.
Multimap m1 is not less than or equal to m2.
在上面的示例中,有两个 multimap m1和m2、 m1和m2包含一个元素。当我们比较两个 multimap 时,它将显示消息" multimap m1小于或等于m2",并且在m1中添加一个额外的元素后,它将显示消息" multimap m1不小于或等于m2"。

示例2

让我们看一个简单的示例:
#include <map>  
#include <iostream>  
  
int main ()  
{  
   using namespace std;  
   multimap <int, int> m1, m2, m3, m4;  
   int i;  
   typedef pair <int, int> Int_Pair;  
  
   for (i = 1; i <3; i ++)  
   {  
      m1.insert (Int_Pair (i, i));  
      m2.insert (Int_Pair (i, i * i));  
      m3.insert (Int_Pair (i, i-1));  
      m4.insert (Int_Pair (i, i));  
   }  
  
   if (m1 <= m2)  
      cout << "The multimap m1 is less than or equal to the multimap m2." << endl;  
   else  
      cout << "The multimap m1 is greater than the multimap m2." << endl;  
  
   if (m1 <= m3)  
      cout << "The multimap m1 is less than or equal to the multimap m3." << endl;  
   else  
      cout << "The multimap m1 is greater than the multimap m3." << endl;  
  
   if (m1 <= m4)  
      cout << "The multimap m1 is less than or equal to the multimap m4." << endl;  
   else  
      cout << "The multimap m1 is greater than the multimap m4." << endl;  
}  
输出:
The multimap m1 is less than or equal to the multimap m2.
The multimap m1 is greater than the multimap m3.
The multimap m1 is less than or equal to the multimap m4.

示例3

让我们看一个简单的示例:
#include <iostream>
#include <map>
using namespace std;
int main()
{
  multimap<char,int> m1, m2;
  
  m1.insert(make_pair('a',10));
  m1.insert(make_pair('b',20));
  m1.insert(make_pair('c',30));
  
  m2 = m1;
  
  cout << (m1 <= m2) << endl;
  m1.insert(make_pair('d',40));
  cout << (m1 <= m2) << endl;
  return 0;
}
输出:
1
0
在上面的示例中,如果m1小于或等于m2,则它将返回1,否则返回0。

示例4

#include <map>  
#include <iostream>  
using namespace std; 
  
int main ()  
{  
   multimap<int,string> m2;
   typedef multimap<int,string> login; 
   
   m2.insert({2040, "xyz@123"}); //stored id and password
   
   string password;
   int id;
   login m1;
   
       cout<<"---------Login----------"<<endl<<endl;
       cout<<"Enter the ID and password: \n";
       cin>> id;              // Get key
       cin>> password;       // Get value
       m1.insert({id, password});   // Put them in multimap
     cout<<"ID and password you have entered: \n";
     for (auto it = m1.begin(); it != m1.end(); it++) {
        cout << (*it).first << " " << (*it).second << endl;
      }
      cout<<"ID and Password stored in the system :\n";
     for (auto it = m2.begin(); it != m2.end(); it++) {
        cout << (*it).first << "    " << (*it).second << endl;
     }
  
   if (m2 <= m1)  
        cout << "\nWelcome to your Page..." << endl; 
   else  
        cout << "\nIncorrect ID or Password..." << endl; 
      
      return 0;
}
输出:
1).
---------Login----------
Enter the ID and password: 
1020     xyz
ID and password you have entered: 
1020     xyz
ID and Password stored in the system:
2040     xyz@123
Incorrect ID or Password...
2).
---------Login----------
Enter the ID and password: 
2040     xyz@123
ID and password you have entered: 
2040     xyz@123
ID and Password stored in the system:
2040     xyz@123
Welcome to your Page...
在上面的示例中,有两个 multimap m1和m2、 m1包含存储的ID和密码,第二个 multimap m2存储用户输入的ID和密码。它检查m2是否小于或等于m1、如果m2的ID和密码小于或等于m1,则登录成功,否则登录失败。

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4